package com.galengao.springboot.mapstruct;

import java.util.List;

/**
 * 通用mapper
 *
 * @author galenGao
 * @version Id: BaseMapper.java, v 0.1 2022/7/21 22:56  GalenGao Exp $$
 */
public interface BaseMapper<D,E> {

    /**
     * entity转Dto
     * @param e e
     * @return D
     */
    D toDto(E e);


    /**
     * DTO转Entity
     * @param dto
     * @return  E
     */
    E toEntity(D dto);

    /**
     * DTO集合转Entity集合
     * @param dtoList  dtoList
     * @return  List<E>
     */
    List<E> toEntity(List<D> dtoList);

    /**
     * Entity集合转DTO集合
     * @param entityList entityList
     * @return   List <D>
     */
    List <D> toDto(List<E> entityList);
}
